package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import pojo.CategoriaUsuario;
import util.ConexaoPPCP;

public class CategoriaUsuarioDao {
    private Connection conexao;
    private CategoriaUsuario categoriaUsuario;

    public CategoriaUsuario localizarCategoria(int id) throws SQLException, ClassNotFoundException{
    	conexao = ConexaoPPCP.getConexaoPPCP();
    	String sql = "select * from CategoriaUsuario where id= ? ";
    	PreparedStatement pst = conexao.prepareStatement(sql);
    	pst.setInt(1, id);
    	ResultSet rs = pst.executeQuery();

    	if(rs.next()){
    		CategoriaUsuario catuser = new CategoriaUsuario();
    		catuser.setId(rs.getInt("id"));
    		catuser.setNome(rs.getString("descricao"));
    		MenuDao menudao = new MenuDao();
    		catuser.setMenu(menudao.localizarMenu(rs.getInt("id")));
    		return catuser;
    	} else {
    		return null;
    	}
    }
    
    public ArrayList getListaCategoria() throws SQLException, ClassNotFoundException{
    	conexao = ConexaoPPCP.getConexaoPPCP();
    	ArrayList <CategoriaUsuario>lista = new ArrayList();
    	String sql = "select * from CategoriaUsuario";
        Statement st = conexao.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
    	ResultSet rs = st.executeQuery(sql);
    	
    	while(rs.next()){
    		CategoriaUsuario categoria = new CategoriaUsuario();
    		categoria.setId(rs.getInt("id"));
    		categoria.setNome(rs.getString("descricao"));
    		lista.add(categoria);
    	}

    	return lista;
    }

}
